
#include <stdio.h>
#include <stdlib.h>
#include "ControladorIDsLibres.h"

int main(void) {

	char nombreArchivo[]="MarceloA.txt";


	ControladorIDsLibres  c;

	ControladorIDsLibres_Iniciar(&c, nombreArchivo,32);

	ControladorIDsLibres_addIDLibre(&c,1);
	ControladorIDsLibres_addIDLibre(&c,2);
	ControladorIDsLibres_addIDLibre(&c,3);
	ControladorIDsLibres_addIDLibre(&c,4);
	ControladorIDsLibres_addIDLibre(&c,5);
	ControladorIDsLibres_addIDLibre(&c,6);
	ControladorIDsLibres_addIDLibre(&c,7);
	ControladorIDsLibres_addIDLibre(&c,8);
	ControladorIDsLibres_addIDLibre(&c,9);
	ControladorIDsLibres_addIDLibre(&c,10);
	ControladorIDsLibres_addIDLibre(&c,11);
	ControladorIDsLibres_addIDLibre(&c,12);
	ControladorIDsLibres_addIDLibre(&c,13);
	ControladorIDsLibres_addIDLibre(&c,14);
	ControladorIDsLibres_addIDLibre(&c,15);
	ControladorIDsLibres_addIDLibre(&c,16);
	ControladorIDsLibres_addIDLibre(&c,17);
	ControladorIDsLibres_addIDLibre(&c,18);
	ControladorIDsLibres_addIDLibre(&c,19);
	ControladorIDsLibres_addIDLibre(&c,20);

	printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	printf("%i-", ControladorIDsLibres_getIDLibre(&c));

	/* Consulta */
	unsigned int cantidad;
	Tid * data;
	int i;

	data = ControladorIDsLibres_getAllLibres(&c,&cantidad);

	printf("Nodos libres (%i): ",cantidad);
	for (i=0; i < cantidad; i++) {
		printf("%i ", data[i]);
	}
	printf("\n");
	free(data);
	/**********/

	ControladorIDsLibres_addIDLibre(&c,21);
	ControladorIDsLibres_addIDLibre(&c,22);
	ControladorIDsLibres_addIDLibre(&c,23);
	ControladorIDsLibres_addIDLibre(&c,24);
	ControladorIDsLibres_addIDLibre(&c,25);
	ControladorIDsLibres_addIDLibre(&c,26);
	ControladorIDsLibres_addIDLibre(&c,27);
	ControladorIDsLibres_addIDLibre(&c,28);

	ControladorIDsLibres_cerrar(&c);

	ControladorIDsLibres_Iniciar(&c, nombreArchivo,32);


	while (ControladorIDsLibres_tieneIDLibre(&c)) {
		printf("%i-", ControladorIDsLibres_getIDLibre(&c));
	}

	ControladorIDsLibres_cerrar(&c);

	return EXIT_SUCCESS;
}

